home *** CD-ROM | disk | FTP | other *** search
/ C/C++ Users Group Library 1996 July / C-C++ Users Group Library July 1996.iso / vol_300 / 309_01 / ccdef.c < prev    next >
Text File  |  1990-03-18  |  3KB  |  116 lines

  1. /*
  2. HEADER:   Definitions
  3. FILENAME:    CCDEF.C
  4. VERSION:    2.3;
  5.  
  6. DESCRIPTION:    "Small-C Compiler definitions."
  7. KEYWORDS:    ;
  8. SYSTEM:        MSDOS
  9.  
  10. SEE-ALSO:    ;
  11. AUTHORS:    Dieter H. Flunkert;
  12. COMPILERS:TurboC V2.0 Medium Memory Model
  13. */
  14.  
  15. #define VERSION "small-c V2.3"
  16. #define BREAK 3
  17. #define CMD_LINE
  18. #define OPTIMIZE
  19. #define PHASE2
  20. #define EOL 10
  21. #define CR 13
  22. #define LF 10
  23. #define YES 1
  24. #define NO 0
  25.  
  26. #define SWSIZ 4
  27. #define SWTABSZ 100
  28. #define ERRCODE 0
  29.  
  30. /* define static table */
  31. #define stattbsize 690
  32. #define statlabel 14
  33. #define statsize 23
  34. /* Define the symbol table parameters */
  35. #define symsiz 14
  36. #define symtbsz 8008
  37. #define numglbs 512
  38. #define MASKGLBS 511
  39. #define startglb symtab
  40. #define startstat stattab
  41. #define endglb startglb+numglbs*symsiz
  42. #define endstat startstat+stattbsize
  43. #define startloc endglb+symsiz
  44. #define endloc symtab+symtbsz-symsiz
  45. /* Define symbol table entry format */
  46. #define name 0
  47. #define ident 9
  48. #define type 10
  49. #define storage 11
  50. #define offset 12
  51. #define offsize 2
  52. /* System wide name size (for symbols) */
  53. #define namesize 9
  54. #define namemax  8
  55. /* Define possible entries for "ident" */
  56. #define variable 1
  57. #define array 2
  58. #define pointer 3
  59. #define function 4
  60. #define MACRO 5
  61. #define LABEL 6
  62. /* Define possible entries for "type" */
  63. #define cchar (1<<2)
  64. #define cint (2<<2)
  65. /* Define possible entries for "storage" */
  66. #define statik 1
  67. #define stkloc 2
  68. #define EXTERNAL 3
  69. #define automatic 4
  70. /* Define the "while" statement queue */
  71. #define wqtabsz 100
  72. #define wqsiz 4
  73. #define wqmax wq+wqtabsz-wqsiz
  74. /* Define entry offsets in while queue */
  75. #define wqsym 0
  76. #define wqsp 1
  77. #define wqloop 2
  78. #define wqlab 3
  79. /* Define the literal pool   */
  80. #define litabsz 1000
  81. #define litmax litabsz-1
  82. /* Define the input line   */
  83. #define linesize 80
  84. #define linemax linesize-1
  85. #define mpmax linemax
  86. /* Define staging buffer size  */
  87. #define stagesize 1200
  88. /* Define the macro (define) pool  */
  89. #define macqsize 1000
  90. #define macmax macqsize-1
  91.  
  92. /* Define statement types (tokens)  */
  93. #define stif 1
  94. #define stwhile 2
  95. #define streturn 3
  96. #define stbreak 4
  97. #define stcont 5
  98. #define stasm 6
  99. #define stexp 7
  100. #define STDO 8
  101. #define STFOR 9
  102. #define STSWITCH 10
  103. /* #define STGOTO 11 */
  104. #define STCASE 12
  105. #define STDEF 13
  106. /* #define STLABEL 14 */
  107.  
  108. /* following added for ASxxx Support by Brian Brown */
  109. #define stdata  15
  110. #define stconst 16
  111. #define stcode  17
  112.  
  113. #define AS6809   1
  114. #define AS9      2
  115. #define CRS8     3
  116.